package com.module03.Q2_MaxSubString;

import java.util.Collections;
import java.util.HashMap;
import java.util.Map;

public class Q2_MaxSubString {
    public static void main(String[] args) {
        String s1="asdafghjka";
        String s2="aaasdfg";
        System.out.println("字符串s1为"+s1);
        System.out.println("字符串s2为"+s2);
//      大字符串
        String max="";
//      小字符串
        String min="";
//      临时
        String temp="";
        Map map=new HashMap();

//      找出长字符串和短字符串
        if(s1.length()>s2.length()){
            max=s1;
            min=s2;
        }else{
            max=s2;
            min=s1;
        }
//      双重循环，将找到的每个子字符串 以子字符串长度为key，加入到map中
        int length=min.length();
        for(int i=0;i<length-1;i++){
            for(int j=length-1;j>i;j--){
                temp=min.substring(i,j);
                if(max.contains(temp)){
                    map.put(temp.length(),temp);
                }
            }
        }
//      map中key最大的value，即为最长的子字符串
        System.out.println("最大子字符串为"+map.get(map.size()));
    }
}
